text: Fix placing the cursor on click
authorMatthias Clasen <mclasen@redhat.com>
Sun, 12 Apr 2020 13:16:51 +0000 (09:16 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 12 Apr 2020 13:19:12 +0000 (09:19 -0400)
Commit c297d45b8a19d84e0 accidentally removed the
check for the right modifier mask, causing us to
always extend the selection.

gtk/gtktext.c

index 1d56e7ea1f46366a6864245c9b02735b2caf30b8..a80a78b6166a83de7345db77accc06e556a386ec 100644 (file)
@@ -2714,6 +2714,7 @@ gtk_text_click_gesture_pressed (GtkGestureClick *gesture,
       gboolean have_selection;
       gboolean is_touchscreen, extend_selection;
       GdkDevice *source;
+      guint state;
 
       sel_start = priv->selection_bound;
       sel_end = priv->current_pos;
@@ -2729,7 +2730,9 @@ gtk_text_click_gesture_pressed (GtkGestureClick *gesture,
       priv->select_words = FALSE;
       priv->select_lines = FALSE;
 
-      extend_selection = GDK_SHIFT_MASK;
+      state = gdk_event_get_modifier_state (event);
+
+      extend_selection = (state & GDK_SHIFT_MASK) != 0;
 
       /* Always emit reset when preedit is shown */
       priv->need_im_reset = TRUE;